Apache ShardingSphere急速认知
什么是SharingSphere?
已于2020年4月16日成为 Apache 软件基金会的顶级项目,懂的都懂
是一套开源的分布式数据库解决方案组成的生态圈,定位为
Database Plus
它由 JDBC、Proxy 和 Sidecar这 3 款既能够独立部署,又支持混合部署配合使用的产品组成
三大构成
ShardingSphere-Sidecar(规划中,简单知道就行)
- 定位为 Kubernetes 的云原生数据库代理,以 Sidecar 的形式代理所有对数据库的访问
- 通过无中心、零侵入的方案提供与数据库交互的啮合层,即
Database Mesh
,又可称数据库网格
ShardingSphere-JDBC
它使用客户端直连数据库,以 jar 包形式提供服务
无需额外部署和依赖,可理解为增强版的 JDBC 驱动,完全兼容 JDBC 和各种 ORM 框架
适用于任何基于 JDBC 的 ORM 框架,如:JPA, Hibernate, Mybatis,或直接使用 JDBC
支持任何第三方的数据库连接池,如:DBCP, C3P0, BoneCP, HikariCP 等;
支持任意实现 JDBC 规范的数据库,目前支持 MySQL,PostgreSQL,Oracle,SQLServer 以及任何可使用 JDBC 访问的数据库
采用无中心化架构,与应用程序共享资源,适用于 Java 开发的高性能的轻量级 OLTP 应用
ShardingSphere-Proxy
- 数据库代理端,提供封装了数据库二进制协议的服务端版本,用于完成对异构语言的支持
- 向应用程序完全透明,可直接当做 MySQL/PostgreSQL
- 它可以使用任何兼容 MySQL/PostgreSQL 协议的访问客户端(如:MySQL Command Client, MySQL Workbench, Navicat 等)操作数据